package edu.tms.bean;

import java.util.*;

import net.easymvc.annotation.Valid;


public class Homework {
	/**
	 * 作业id
	 */
	private Integer homeworkId;

	/**
	 * 发布教师id
	 */
	private Integer tchId;

	/**
	 * 专业名称
	 */
	private String majorName;

	/**
	 * 班级名称
	 */
	private String className;

	/**
	 * 课程名称
	 */
	private String courseName;

	/**
	 * 作业布置时间
	 */
	private Date createTime;

	/**
	 * 作业内容
	 */
	private String homeworkContent;

	/**
	 * 作业文件地址
	 */
	private String homeworkFile;

	/**
	 * 作业提交截止时间
	 */
	@Valid(pattern="yyyy-MM-dd HH:mm")
	private Date homeworkDeadline;

	/**
	 * 作业状态 1：提交中 2：禁止提交
	 */
	private Integer submitState;
	/**
	 * 已提交人数
	 */
	private double countWork;
	/**
	 * 合格人数
	 */
	private double countScore;
	/**
	 * 老师姓名
	 */
	private String tchName;

	/**
	 * 合格率
	 */
	private double qualified;
	/**
	 * 提交率
	 */
	private double submission;
	/**
	 * 学生姓名
	 */
	private String stuName;
	/**
	 * 提交状态
	 */
	private Integer workState;
	/**
	 * 作业分数
	 */
	private String workLevel;

	/**
	 * 所属班级名称
	 */
	private String stuClassName;
	
	/**
	 * 虚拟字段 作业完成状态，用于学生
	 */
	private Integer fulfilState;
	
	private Integer shouldsubcount;
	
	private Integer workcount;
	
	private Integer passcount;
	
	private Integer notpasscount;
	
	private Integer percentpass;
	
	public Homework () {
		super();
	}

	public Homework (Integer homeworkId,Integer tchId,String majorName,
			String className,String courseName,Date createTime,
			String homeworkContent,String homeworkFile,
			Date homeworkDeadline,Integer submitState) {
		this.homeworkId = homeworkId;
		this.tchId = tchId;
		this.majorName = majorName;
		this.className = className;
		this.courseName = courseName;
		this.createTime = createTime;
		this.homeworkContent = homeworkContent;
		this.homeworkFile = homeworkFile;
		this.homeworkDeadline = homeworkDeadline;
		this.submitState = submitState;
	}


	public Integer getPasscount() {
		return passcount;
	}

	public void setPasscount(Integer passcount) {
		this.passcount = passcount;
	}

	public Integer getNotpasscount() {
		return notpasscount;
	}

	public void setNotpasscount(Integer notpasscount) {
		this.notpasscount = notpasscount;
	}

	public Integer getPercentpass() {
		return percentpass;
	}

	public void setPercentpass(Integer percentpass) {
		this.percentpass = percentpass;
	}

	public Integer getWorkcount() {
		return workcount;
	}

	public void setWorkcount(Integer workcount) {
		this.workcount = workcount;
	}

	public Integer getShouldsubcount() {
		return shouldsubcount;
	}

	public void setShouldsubcount(Integer shouldsubcount) {
		this.shouldsubcount = shouldsubcount;
	}

	public Integer getHomeworkId() {
		return homeworkId;
	}

	public void setHomeworkId(Integer homeworkId) {
		this.homeworkId = homeworkId;
	}

	public Integer getFulfilState() {
		return fulfilState;
	}

	public void setFulfilState(Integer fulfilState) {
		this.fulfilState = fulfilState;
	}

	public Integer getTchId() {
		return this.tchId;
	}

	public void setTchId(Integer tchId) {
		this.tchId = tchId;
	}

	public String getMajorName() {
		return this.majorName;
	}

	public void setMajorName(String majorName) {
		this.majorName = majorName;
	}

	public String getClassName() {
		return this.className;
	}

	public void setClassName(String className) {
		this.className = className;
	}

	public String getCourseName() {
		return this.courseName;
	}

	public void setCourseName(String courseName) {
		this.courseName = courseName;
	}

	public Date getCreateTime() {
		return this.createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public String getHomeworkContent() {
		return this.homeworkContent;
	}

	public void setHomeworkContent(String homeworkContent) {
		this.homeworkContent = homeworkContent;
	}

	public String getHomeworkFile() {
		return this.homeworkFile;
	}

	public void setHomeworkFile(String homeworkFile) {
		this.homeworkFile = homeworkFile;
	}

	public Date getHomeworkDeadline() {
		return this.homeworkDeadline;
	}

	public void setHomeworkDeadline(Date homeworkDeadline) {
		this.homeworkDeadline = homeworkDeadline;
	}

	public Integer getSubmitState() {
		return this.submitState;
	}

	public void setSubmitState(Integer submitState) {
		this.submitState = submitState;
	}

	@Override
	public String toString() {
		return "{homewordId:" + homeworkId+ ", tchId:" +
				tchId + ", majorName:" + majorName + ", className:" + className + 
				", courseName:" + courseName + ", createTime:" + createTime +
				", homeworkContent:" + homeworkContent + ", homeworkFile:" + 
				homeworkFile + ", homeworkDeadline:" + homeworkDeadline + 
				", submitState:" + submitState +",tchName:"+tchName + 
				",countWork:"+countWork+"countScore:"+countScore+
				",qualified:"+qualified+",submission:"+submission+
				",stuName:"+stuName+",workState:"+workState+",workLevel:"+workLevel+",stuClassName:"+stuClassName+"}";
	}

	/**
	 * @return the tchName
	 */
	public String getTchName() {
		return tchName;
	}

	/**
	 * @param tchName the tchName to set
	 */
	public void setTchName(String tchName) {
		this.tchName = tchName;
	}

	public double getCountWork() {
		return countWork;
	}

	public void setCountWork(double countWork) {
		this.countWork = countWork;
	}

	public double getCountScore() {
		return countScore;
	}

	public void setCountScore(double countScore) {
		this.countScore = countScore;
	}

	public double getQualified() {
		return qualified;
	}

	public void setQualified(double qualified) {
		this.qualified = qualified;
	}

	public double getSubmission() {
		return submission;
	}

	public void setSubmission(double submission) {
		this.submission = submission;
	}

	public String getStuName() {
		return stuName;
	}

	public void setStuName(String stuName) {
		this.stuName = stuName;
	}

	public Integer getWorkState() {
		return workState;
	}

	public void setWorkState(Integer workState) {
		this.workState = workState;
	}

	public String getWorkLevel() {
		return workLevel;
	}

	public void setWorkLevel(String workLevel) {
		this.workLevel = workLevel;
	}

	public String getStuClassName() {
		return this.stuClassName;
	}

	public void setStuClassName(String stuClassName) {
		this.stuClassName = stuClassName;
	}

}

